package com.sh.data.engine.domain.normalization.modeldesign.model.model.domain;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * @author : changkong
 * @date : 2022/1/6
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ModelDomain {
    private Long id;

    private String schema;

    private String cnName;

    private String enName;

    private Long themeId;

    /**
     * 生命周期 0-永久
     */
    private int lifeCycle;

    /**
     * 数据密级
     */
    private Long dataSecretId;

//    private Long createBy;
    private String createBy;

    private Date updateTime;

    private Date createTime;

    private List<Field> fields;

    private boolean hive;

    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public static class Field {
        private String fieldName;
        private String fieldDesc;
        private String fieldType;
        private Boolean required;
        private Boolean isPartition;
    }
}
